(navigation image)
Home American Libraries | Canadian Libraries | Universal Library | Community Texts | Project Gutenberg | Children's Library | Biodiversity Heritage Library | Additional Collections
Search: Advanced Search
Anonymous User (login or join us)
Upload
See other formats

Full text of "PCMania 66"

SUPLEMENTO MENSUAL DEDICADO A LA IMAGED SINTETICA 




Miiinero 16 



Informe Especial 



Las extrusiones 
en Rhino 



Como 



Iniciarse 

en la Pox mania 



For o de l Lecto r 
Vuestra galeria 
de arte visual 



Nueva beta 
del modelador 
Rhinoceros 



pc(iDan/ia 




i ii i 



*B* 




^L Informe Especial 



Creacion de objetos 
con Rhinoceros 






En el numero 11 de Rendermania presentamos «RhinocerosJ 
un potente modelador cuya filosoffa se basa en el dibujo c 
que luego pueden ser "elevadas" para crear objetos en tres dim< 
(usando una amplia variedad de metodos). Hoy, con motivo 
de la publicacion de una nueva beta por parte de los creadori 
de«Rhinoceros», aprovecharemos para explicar algunos de; jBTmetoc 
mas importantes que emplea este modelador para crear^bjetos 
tridimensionales a partir de curvas 2D. 



omo ya dijimos en- 
tonces, «Rhinoce- 
ros» no es un pro- 
grama de libre uso 
como POV ni tam- 
poco pertenece a la 
modalidad shareware. Cuando termine 
el periodo de prueba de la beta que po- 
deis hallar en nuestro CD-ROM. Mc- 
Neel y Asociados pondran el programa 
a la venta (aunque tambien cabe la po- 
sibilidad de que decidan publicar una 
nueva beta con otros tres meses de vi- 
gencia). Sin embargo, a pesar de esto. 
hemos crefdo oportuno publicar la pre- 
sente beta con el proposito de tener la 
ocasion de comentar las tecnicas em- 
pleadas por uno de los mejores mode- 




2 Rendermania 



ladores basados en Nurbs del mercado. 
Aunque ya dedicamos, en el niimero 
11, un informe a «Rhinoceros», dicho 
informe se ocupo casi enteramente de 
explicar las opciones de creacion y edi- 
cion de curvas y superficies. Estaba 
claro que «Rhinoceros» se merecfa una 
segunda parte y eso es lo que encontra- 
reis en estas paginas: un artfculo dedi- 
cado sobre todo a comentar algunas de 
las tecnicas de "elevacion" mas emple- 
adas con «Rhinoceros». Esto implies, 
por supuesto, que debereis leer el in- 
forme que dedicamos a este programa 
hace cinco meses para poder crear las 
formas 2D que se emplean como punto 
de pallida en el presente artfculo. 

Dos extrusiones simples 

Cargad el fichero extrude. 3dm que 
encontrareis en eidirectorio de tutoria- 
les de «Rhinoceros». Una vez hecho 
esto observad la ventana de perspecti- 
va. En ella vereis dos curvas cerradas 
que reposan sobre el piano de cons- 
truction y una lfnea roja ligeramente 
curvada que abandona perpendicular- 
mente dicho piano. 

(Nota importante: todas las ventanas 
de «Rhinoceros» utilizan un piano de 
construccion sobre el que, por defecto. 
se colocaran las curvas 2D que iremos 
dibujando. Cada ventana tiene su pro- 
pio piano que establece un sistema de 
coordenadas propio en cada ventana. 
No es lo mismo indicar un punto con 
coordenadas 5,5 en la ventana Top que 
en la Front. Como la orientacion espa- 
cial de estos pianos de construccion 
puede s^r alterada por el usuario, esta 
claro que ello puede ser una gran ayuda 
a la hora de crear curvas o superficies 
2D que tengan una orientacion diferen- 
te a la establecida por defecto). 




Ejemplo de extrusiones sencillas. 

Ahora situad el cursor sobre el icono 
"Surfaces Toolbox" (d5). Si pinchamos 
sobre este icono con el boton izquierdo 
del raton -al que llamaremos de ahora 
en adelante BI- aparecera un menu de 
iconos. Este menu contiene la mayor 
parte de las 
opciones de 
"elevacion" 
de «Rhino- 
ceros». Te- 
ned en cuen- 
ta que aqui 
llamamos 
elevacion o 
extrusion a 
cualquier 
proceso por 
el que se cre- 
en formas 3D 

a partir de curvas o superficies 2D. Pin- 
chad sobre el icono "Extrude Straight" 
situado en este nuevo menu y luego se- 
leccionad la curva cerrada de color lila. 
Seguidamente. «Rhinoceros» nos pedi- 
ra que indiquemos un punto para esta- 
blecer el sitio desde el que partira el 
patch recto que emplearemos para 
crear la forma. Marcaremos con Bl un 
punto cualquiera dentro de la curva 
desde la ventana Top, y despues -desde 
la ventana Right- fijaremos la longitud 
del patch (lo que haremos desplazando 
el cursor y pinchando nuevamente con 
Bl). Hecho esto se creara un objeto 3D 



cuya forma sera el resultado de despla- 
zar la curva cerrada inicial a lo largo 
del patch recto que hemos dibujado. 
Este es el tipo de extrusion mas simple 
posible. 

Si ahora ordenamos un render des- 
de la ventana de perspectiva nos per- 
cataremos de que el nuevo objeto ca- 
rece de tapas. Esto se debe a que 
hemos extrusionado una curva, no una 
superficie. Sin embargo, podemos 
anadir las tapas facilmente. Para ello 
eliminad la curva inicial (seleccionan- 
dola y pulsando la tecla de supresion). 
Luego haced aparecer nuevamente el 




menu emergente de la "Surfaces Tool- 
box" y pulsad con BI sobre el icono 
"From planar curves". Esta opcion sir- 
ve para crear superficies a partir de 
curvas cerradas (y podremos utilizarla 
en muchos otros tipos de elevacion pa- 
ra poner tapas a los objetos). Ahora, 
situaos en la ventana Perspective o en 
la Right y pinchad sobre uno de los 
extremos no cerrados del objeto. Des- 
pues repetid toda la operacion con el 
otro extremo. Ya solo nos queda crear 
un unico objeto a partir de los tres que 
tenemos por ahora (la forma 3D resul- 
tante de la extrusion y dos tapas). Esto 



Rendermania 3 



W-P 




Informe Especial 



lo haremos pinchando primero sobre el 
icono "Join" (i8) y luego sobre las dos 
superficies y el objeto. Asi, despues de 
pulsar enter, tendremos un unico obje- 
to. Ahora veamos otro caso sencillo de 
extrusion: dejad pinchado un instante 
el icono "Extrude Straight" de la "Sur- 
faces Toolbox" para hacer aparecer el 
pequefio submenu de extrusion. Enton- 
ces pulsad sobre "Extrude along Cur- 
ve" (extrusionar a lo largo de una cur- 
va) y despues pinchad primero sobre la 
curva cerrada roja y luego sobre la cur- 
va abierta del mismo color que arranca 
de la anterior. El resultado sera un ob- 
jeto similar al obteni- 
do anteriormente pero 
que se arqueara si- 
guiendo el patch. 

Por alguna razon el 
objeto obtenido no 
siempre se crea siguien- 
do el camino del patch. 
A veces lo hace en la 
direccion opuesta a la 
del patch. Si queremos 
asegurarnos de que el 
objeto se crea a lo largo 
del patch habraque pin- 
char en un punto deter- 
minado de este. Asi', en 
este caso, habremos de 
hacerlo cerca de la curva a extrusionar. 

Las superficie 
de revolution 

Quienes leyeran el artfculo sobre 
formas organicas del niimero 1 1 de 
Rendermama recordaran que se em- 
pled una superficie de revolucion para 
generar el cilindro basico con el que se 
creo despues la primera cabeza de or- 
co. Como quiza este uso tan poco orto- 
doxo de estas superficies puede haber 




Una superficie de Revolucion. 

despistado a los lectores mas novatos, 
veremos seguidamente un ejemplo al- 
go mas normal: 

1) Cargad el fichero de ejemplo re- 
volve. 3dm del tutorial. 




2) Pulsad sobre el icono "Revolve" 
del menu emergente de la "Surfaces 
Toolbox". 

3) Pinchad sobre la curva visible en 
la ventana Front. 

4) Ahora hay que definir el eje en 
torno al cual girara la forma anterior. 
Para esto lo mejor suele ser activar an- 
tes el grid (icono gridsnap toggle del 
menu emergente del icono hi 5). En- 
tonces dibujaremos (en Front) una li- 
nea vertical que deberemos dejar pega- 



da a la curva a "revolver". Hecho esto 
aparecera un menu en el que se nos pre- 
guntara si deseamos que el objeto a 
crear sea det'ormable mas tarde median- 
te puntos de control. Si este es el caso 
marcaremos el apartado "det'ormable 
with" y luego indicaremos el niimero de 
puntos de control en el recuadro lateral. 
El angulo de comienzo para el objeto a 
crear (start angle) sera normalmente de 
y el angulo final (end angle) valdra 
usualmente 360 grados. Una vez cerra- 
da la ventana se creara, en este ejemplo, 
un objeto muy parecido a una canasta. 
El lado inferior del mismo estara cerra- 
do porque hemos colo- 
cado el eje pegado a la 
curva. En caso de ha- 
berlo separado un po- 
co, la forma resultante 
habria tenido un aguje- 
ro en su base. 

Estas superficies son 
lo mejor para crear 
formas como vasos y 
copas, peones de aje- 
drez, canones, flore- 
ros, etc. Quienes ha- 
yan trabajado con 
ellas en otros progra- 
mas no tendran pro- 
blemas para manejar- 
las en «Rhinoceros» y si este no es 
vuestro caso la experimentacion sera la 
linica forma de familiarizaros con este 
tipo de extrusiones. 

Barrido a lo largo 
de un patch 

Hasta ahora hemos visto las opcio- 
nes de extrusion mas sencillas de «Rhi- 
noceros». O sea, las que son comunes a 
la practica totalidad de los modelado- 
res del panorama infografico. Pero aho- 



4 Rendermania 




Secciones para crear el tubo. 




Usando sweep along patch. 

ra comenzaremos a hablar de las op- 
ciones que permiten construir formas 
verdaderamente complejas con este 
programa. 

Comenzaremos porel icono "Sweep 
along Patch", el cual se encuentra ac- 
cesible desde el menu emergente de la 
"Surfaces Toolbox". Para estudiar su 
funcionamiento realizaremos un par de 
experimentos. Para el primero utiliza- 
remos nuevamente el ejemplo del fi- 
chero extrude. 3dm. Una vez cargado 
este archivo, pulsad en el icono de esta 
opcion y luego pinchad sobre la curva 
roja cerrada. Cuando lo hayais hecho 
el programa os pedira que pulseis so- 
bre la siguiente curva mas cercana a la 
anterior o que pulseis Enter si no hay 
mas. Esto quiere decir que "Sweep 
along Patch" puede emplear mas de 
una curva para construir las secciones 
intermedias de la forma a crear. Luego 
veremos otro ejemplo donde nos apro- 



vecharemos de esta posibilidad. Por 
ahora pulsad Enter. Hecho esto «Rhi- 
noceros» nos pedira que seleccionemos 
la "rail curve", es decir, el patch. Selec- 
cionad pues la h'nea roja y pulsad Enter. 
El resultado sera una forma arqueada 
similar a la conseguida en este mismo 
ejemplo con "Extrude along Curve", 
pero con la diferencia de que aqui las 
secciones intermedias se han orientado 



Ahora veamos otro ejemplo. Cargad 
el archivo de ejemplo barrido.3Dm que 
hallareis en el directorio de ejemplos. 
Observareis tres curvas cerradas que 
"Sweep along Patch" utilizara para 
crear las secciones cruzadas del objeto 
a elevar. Como vereis, estas curvas son 
todas diferentes entre sf. Pulsad sobre 
el icono "Sweep along Patch" y luego 
pinchad las tres curvas cerradas desde 




siguiendo la direccion del patch. (Aqui 
llamamos secciones cruzadas a las cur- 
vas 2D que emplea «Rhinoceros» para 
elevar los objetos. En efecto: en todas 
las opciones de "elevacion", «Rhinoce- 
ros» crea los objetos gracias a copias o 
deformaciones -segun el caso- de las 
secciones originales. Estas secciones 
cruzadas se desplazan en el espacio 3D 
siguiendo un patch para crear el objeto. 
Normalmente el usuario dibujara una o 
mas secciones cruzadas para hacer la 
elevacion y el programa generara otras 
a partir de las del usuario). 



la ventana top siguiendo un orden (por 
ejemplo, de abajo a arriba). Hecho esto 
pulsad Enter. Entonces «Rhinoceros» 
nos pedira que indiquemos un punto en 
la primera curva que hemos seleccio- 
nado antes. Desde la misma ventana 
Top situad el cursor cerca del extremo 
derecho de la primera curva. Cuando lo 
hagais aparecera una pequena marca en 
la h'nea amarilla que representa a la pri- 
mera curva. Podreis desplazar esta 
marca por la curva a vuestro gusto pero 
pulsad con BI cuando la marca este jus- 
to en el extremo derecho de la curva. 



Rendermania 5 




Informe Especial 



Primero debemos indicar el 
orden de los perfiles del brazo. 



Ejemplo de creacion de las 
secciones del brazo. 



Entonces haced lo propio con las otras 
dos curvas. Luego veremos como em- 
plea «Rhinoceros» estas marcas. Al 
marcar la ultima curva, el programa 
nos pedira que seleccionemos el patch 
a recorrer (la "rail curve"). Pinchad en- 
tonces sobre la curva abierta que une a 
las tres curvas-seccion y pulsad Enter. 
Por ultimo indicad si quereis borrar o 
no las curvas iniciales y el patch des- 
pues de crear el objeto. 

El resultado -si lo hemos hecho todo 
bien- debera ser una especie de tubo 
arqueado sin tapas en sus extremos 
(utilizad el render de prueba). Hay que 
decir que la forma obtenida se extiende 
siempre desde la forma inicial dada 
hasta la final. Para comprobar esto des- 
haced el experimento con undo (ctrl-z) 
y desplazad a la curva inicial hasta si- 
tuarla muy cerca de la curva central. 
Entonces repetid los pasos anteriores 
para crear la forma 3D. Como vereis, 
el tubo obtenido no abarca toda la lon- 






rW 



El siguiente paso es poner las 
marcas a cada seccion. 



■ . 


. 




SS3SS* , "*-"""'" i ' 








,^v .- _ - 


,* 






^tjpfi^ 


-1 




^^**^^ (f - 


H ' 






——~s— ^— 













Este es el resultado que muestra 
el brazo acabado. 



gitud del patch, sino que arranca desde 
la primera curva y acaba en la ultima. 
Ahora veamos otra cosa. Deshaced el 
ultimo experimento (con dos operacio- 
nes de undo) y volved a repetirlo todo 
con las curvas cerradas en sus posicio- 
nes originales. Lo unico que cambiare- 
mos en la nueva elevacion sera la coloca- 
cion de la marca en la curva cerrada 
central. Aquf, en lugar de situar la marca 
en el extremo derecho de la curva, como 
en los otros dos casos, la situaremos en 
el extremo izquierdo. Con esto el resulta- 
do que obtendremos al elevar no sera un 
tubo, sino algo muy parecido a un cara- 
melo con su ti'pico envoltorio enrollado. 
Esto se debe a que «RJiinoceros» utiliza 
las marcas para saber como conectar a las 
curvas-seccion (en esta y en otras opcio- 
nes de elevacion). Normalmente las mar- 
cas deberan estar siempre en la misma 
position relativa en todas las curvas in- 
termedias o de lo contrario obtendremos 
resultados indeseados. 



El ejemplo del brazo 

Es facil ver que la potente option 
explicada en el apartado anterior nos 
servirfa para crear muchos objetos 
complejos de todo tipo. Teoricamente 
podrfamos, por ejemplo, crear las sec- 
ciones intermedias de un brazo o de 
una pierna y usar "Sweep along Patch" 
para elevar un objeto de este tipo. Es 
decir, podrfamos emplear esta option 
si no existiera otra mas sencilla para es- 
te caso en particular y para otros pare- 
cidos. Veamos un ejemplo tornado as- 
tutamente del tutorial de Jonathan 
Block (un usuario de «Rhinoceros»). 
En este estupendo archivo HTML que 
podeis hallar en el CD, se explica deta- 
lladamente como crear un brazo com- 
plete, desde el hombro hasta la punta 
de los dedos. Nosotros, no obstante, 
nos limitaremos a explicar el procedi- 
miento para crear la forma del brazo 
desde el hombro a la muneca. 

^Que tiene de malo en este caso 
"Sweep along Patch"? Pues nada salvo 
que, como podeis imaginar, es mucho 
mas facil dibujar los perfiles de un bra- 
zo que toda una serie de secciones cru- 
zadas que definan la forma del mismo. 
Por esta razon. «Rhinoceros» nos ofre- 
ce un sistema para obtener secciones 
cruzadas a partir de los perfiles de un 
objeto. El proceso consistira pues en 
obtener primero las secciones cruzadas 
necesarias a partir de las lineas de perfil 
y luego en crear al propio objeto a par- 
tir de las secciones obtenidas. 

Podemos conseguir que «Rhinoceros» 
genere automaticamente las secciones 
cruzadas a partir de al menos tres lf- 
neas-perfil, aunque las secciones resul- 
taran mas precisas si empleamos mas li- 
neas. En el brazo de ejemplo creado por 
Jonathan Black se han empleado sola- 



6 Rendermania 



mente cuatro curvas como perfil obte- 
niendo un resultado bastante aceptable. 
Veamos detalladamente este proceso: 

1) Lo primero es dibujar las curvas 
abiertas que representan a las lfneas de 
perfil del brazo. Dibujaremos dos en la 
ventana Front para representar el brazo 
visto de lado y otras dos en la ventana 
Top para representar el perfd del brazo 
visto desde arriba. Para dibujar estas lf- 
neas podemos emplear cualquiera de 
las opciones de dibujo de curvas 2D del 
programa, aunque quiza lo mas senci- 
Uo sea usar la opcion "Sketch Curve" 
del submenu emergente que aparece 
con el icono "Interpolated Curve" (d2). 
El icono "Sketch Curve" nos permitira 
dibujar curvas a mano al- 
zada, tal como lo harfa un 
dibujante. Es importante 
tomar nota de que los 
perfiles deberan estar ali- 
neados, es decir, los dos 
perfiles laterales de Front 
deberan estar situados en- 
tre los dos de la ventana 
top y viceversa. En fin, 
para ahorraros el esfuer- 
zo, cargad el archivo bra- 
zo.3Dm que encontrareis 
en el directorio de ejem- 

plos y observad la forma 

y posicion de las curvas- 

perfil. Estas curvas no son 

ninguna maravilla, pero 

serviran para ilustrar este procedimiento 

de elevacion. 

2) Una vez que tengamos preparados 
los perfiles el siguiente paso sera hacer 
que «Rhinoceros» construya las seccio- 
nes cruzadas que han de dibujarse entre 
los cuatro perfiles. Para ello teclearemos 
el comando Csec. (Nota: «Rhinoceros» 
admite una extensa lista de ordenes por 



consola). Hecho esto el programa nos 
pedira que seleccionemos las curvas-per- 
fil en orden ("select curves in orden"). 
Esto quiere decir que habremos de pin- 
char a las cuatro curvas siguiendo un or- 
den cualquiera, por ejemplo, el del senti- 
do de las manecillas del reloj. Para no 
confundirnos en este punto lo mejor sera 
hacer esto desde la ventana de perspec- 
tiva, haciendola rotar si es necesario. 
Una vez que hallamos seleccionado las 
cuatro curvas pulsaremos Enter. 

3) Despucs, «Rhinoceros» nos pedi- 
ra que indiquemos las posiciones don- 
de deberan crearse las secciones cruza- 
das (con el mensaje "Cross-section line 
start"). Para ello trabajaremos desde 




una cualquiera de las dos ventanas de 
trabajo (la top o la front). Tendremos 
que ir creando ordenadamente una se- 
rie de lfneas que cruzaran los cuatro 
perfiles del brazo. Es importante tomar 
nota de que estas lfneas habran de ser 
dibujadas siguiendo un orden, por 
ejemplo, de izquierda a derecha y de 
abajo a arriba. Tambien conviene no ol- 



vidar que todas las lfneas habran de 
cruzar los cuatro perfiles. Menciona- 
mos esto porque es posible que al di- 
bujar los mencionados cuatro perfiles 
no hayamos sido demasiado exactos, de 
manera que estos no tengan exactamen- 
te la misma longitud. Si alguna de las 
lfneas no engloba a los cuatro perfiles, 
entonces la seccion cruzada correspon- 
diente no se dibujara correctamente. 
Por cada lfnea dibujada veremos apare- 
cer una seccion cruzada en la ventana 
de perspectiva. Las secciones correctas 
deberan quedar enmarcadas dentro de 
las cuatro curvas-perfil. Cuando haya- 
mos acabado de dibujar las secciones 
cruzadas pulsaremos return. 

4) Una vez creadas las 
secciones cruzadas po- 
dremos generar el brazo 
con ellas. Para ello pulsa- 
remos sobre el icono 
"Lofted" del menu emer- 
gente de la "Surfaces To- 
olbox". Este icono nos 
permitira crear extrusio- 
nes utilizando mas de 
una seccion y funciona 
de manera muy similar a 
"Sweep along Patch", 
aunque "lofted" no preci- 
sa de un patch (lo crea el 
propio programa a partir 
de las secciones). Enton- 
ces «Rhinoceros» nos 
pedira que seleccionemos la primera 
seccion cruzada ("select shape curve ne- 
ar start"), lo cual haremos pinchando 
sobre la primera seccion que creamos 
en el paso anterior. Luego el programa 
nos pedira que seleccionemos la si- 
guiente curva cerrada ("select next clo- 
sed shape curve"). Iremos pues pinchan- 
do todas las secciones siguiendo el orden 



Rendermam'a 7 



I i I I 



mi 




^1 Inf orme Especial 



de su creation hasta llegar a la ultima, 
momento en que pulsaremos Enter. Te- 
ned cuidado de no seleccionar por error 
ningunade las curvas-perfil. 

5) Hecho esto, «Rhinoceros» nos pe- 
dira que indiquemos el punto de co- 
mienzo/final de la primera seccion 
("select the start/end of the first closed 
curve"). Al llevar el cursor hacia esta 
seccion aparecera una niarca que po- 
dremos desplazar con el raton. Esta 
marca cumple aqui el mismo proposito 
que ya vimos en la opcion "Sweep along 
Patch". Por ello deberemos colocarla 
en el mismo punto en todas las seccio- 
nes (por ejemplo en el extremo inferior 
de cada seccion). Al situar cada marca 
pulsaremos BI y al concluir con la ulti- 
ma pulsaremos Enter, en cuyo momen- 
to podremos optar por borrar o no las 
curvas iniciales. Y con esto ya se habra 
creado la forma general del brazo. 

El tubo de pegamento 

Otro ejemplo que conviene examinar 
es el descrito en el fichero rule.3Dm del 



.- 


■ "\ 





Es un tubo de pegamento creado 
con ruled. 

tutorial del programa. En este archivo 
hay cuatro curvas abiertas que emplea- 
remos para crear un bote de pegamento 
utilizando la opcion para crear superfi- 
cies "ruled" (estas superficies conectan 
curvas empleando h'neas rectas). 

Pulsad en el icono "rule" de la "Sur- 
faces Toolbox" y luego situaos en la 
ventana Top. Seguidamente pinchad 
sobre las cuatro curvas siguiendo un 
orden dado (por ejemplo de izquierda 
a derecha y siempre pinchando sobre el 
extremo inferior de cada curva). Al 
acabar, pulsad Enter dos veces y deci- 
did si quereis borrar o no las curvas ini- 
ciales. Es importante notar que, como 
en los casos anteriores, sera de una im- 




portancia vital respetar un orden cual- 
quiera al pinchar sobre las curvas. Si 
seleccionamos a las curvas salteada- 
mente o si no pinchamos siempre en el 
mismo punto en cada una, los resulta- 
dos no seran los esperados. 

Operaciones booleanas 

Aunque todavfa quedan por explicar 
bastantes opciones de elevation, el es- 
pacio se nos acaba y queremos mencio- 
nar la posibilidad que nos ofrece «Rhi- 
noceros» de hacer operaciones 
booleanas. Estas se hallan accesibles en 
el menu emergente del icono "Solids 
Toolbox". Alii, pinchando sobre el ico- 
no Subtract, podremos acceder a un pe- 
quefio submenu con los iconos Add, 
Subtract e intersection, los cuales lie- 
van a cabo las operaciones booleanas 
de union, resta e intersection respecti- 
vamente. Para comprobar su funciona- 
miento cargad el archivo boolean. 3dm 
del directorio tutorial y realizad algunos 
experimentos. El sistema para llevar a 
cabo estas operaciones es bien simple. 
Primero pulsamos sobre el icono de la 
operation deseada y luego pinchamos 
sobre dos objetos. Si la operation en 
curso es una union, ambos objetos se 
convertiran en uno solo. Si se trata de 
una resta, entonces el volumen espacial 
del segundo se restara del volumen del 
primero. Y en caso de que se trate de 
una intersection, entonces el resultado 
sera un objeto con la forma del volu- 
men compartido de ambos objetos. 

Acerca de las ilustraciones 

Todas las escenas de estas paginas 
han sido modeladas con «Rhinoceros» 
por diversos autores y luego renderiza- 
das desde algun otro programa como 
«Max», «Lightwave» o «POV». 



8 Rendermania 






Como... 



Empezar con POV (parte I) 

Desde hace ya algun tiempo estamos recibiendo cartas de lectores que 
nos cuentan que POV les parece demasiado dificil como para hacer algo 
con el. Casi siempre, los lectores que envian estas cartas se 
encuentran en dos casos bien diferentes: por un lado estan los nuevos 
lectores, recien enganchados al virus infografico, que suelen hallar 
incomprensibles los articulos normales que dedicamos a POV en 
Rendermania porque no disponen de los conocimientos basicos 
necesarios (proporcionados por articulos anteriores) y por otro, aquellos 
rendermaniacos que si disponen de estos conocimientos pero que 
encuentran demasiado lento o dificil el modelado con el lenguaje 
escenico. Teniendo esto en cuenta hemos preparado 
el presente articulo para demostrar lo facil de utilizar que es POV 
y por que merece la pena emplearlo. 







OV es un programa 
de generacion de 
imageries sinteticas 
cuyo motor, basado 
en el trazado de ra- 
yos, permite calcu- 
lar escenas de una gran calidad. POV 
es un programa de libre uso y distribu- 
tion cuyo codigo fuente se halla tam- 
bien accesible para el publico. POV no 
cuesta un centimo pero su popularidad 
no se basa en esto sino en la gran cali- 
dad de su render y en las fabulosas po- 
sibilidades de su lenguaje escenico. 
Existen versiones de POV para dife- 
rentes sistemas operativos entre los 
que se hallan MS-DOS y Windows 95 



Rendermania 9 




C omo... 




Una obra de Gena Obukhov usando Spatch y Pov. 



y todo cuanto vais a leer en el presente 
articulo es valido para todas las versio- 
nes, aunque el autor suele trabajar con 
la version 3.02 para MS-DOS. 

Funcionamiento general de POV 

Para generar las escenas POV se 
apoya en los llamados ficheros esceni- 
cos, unos archivos de texto en formato 
ASCII que el usuario debera escribir 
usando un procesador de textos cual- 
quiera. Estos archivos deberan ser es- 
critos empleando las sentencias y la 
sintaxis del lenguaje escenico de POV. 
Una vez que el usuario haya terminado 
la redaction de uno o mas de estos ar- 
chivos -dependiendo de la estructura 
del proyecto-, entonces invocara a 
POV pasandole ordenes especfficas 
acerca de la resolucion que se desea 
para la imagen, el tipo de calidad, la 
ubicacion de las librerfas, etc. Estas or- 
denes, en la version de MS-DOS. se 
incluyen dentro de la linea de invoca- 
tion del programa. Asf por ejemplo en 
la siguiente linea... 

povray +icastillo.pov +ocastillo.tga 
+w320 +h200 -d +v 



... el usuario le esta pidiendo a POV 
que procese el fichero escenico casti- 
llo.pov y que genere con el una imagen 
que se guardara en el archivo castillo.tga. 
La escena tendra una resolucion de 
320*256 puntos y durante el proceso de 
generacion la salida a video estara des- 
conectada (-d), aunque el programa nos 
ira indicando el niimero de linea en que 
se esta trabajando en cada momenta 
(+v). A menudo estas ordenes son 11a- 
madas comandos de la lfnea de ordenes. 

Los archivos escenicos suelen tener 
la extension .pov o .inc. Normalmente 
el archivo principal (el que se da como 
entrada a POV) suele usar la extension 
.pov mientras que los llamados .inc 
suelen ser ficheros referenciados por el 
archivo principal o por otros .inc. Esto 
se hace asf por criterios de organiza- 
tion para dividir en varios ficheros a 
los proyectos demasiado grandes. Asf, 
en el ejemplo anterior, el archivo prin- 
cipal es castillo. pov, el cual podrfa re- 
ferenciar a ficheros como torres.inc, 
almenas.inc, etc., donde vendrfa la 
descripcion de una serie de objetos que 
podrfan ser empleados en el archivo 



principal. Todos estos archivos deberan 
estar compuestos por sentencias vali- 
das del lenguaje escenico de POV tal y 
como podrfa esperarse del fuente de un 
programa. 

Siguiendo con el ejemplo anterior, al 
invocar a POV, este cargara el archivo 
escenico suministrado como entrada y 
empezara con el proceso llamado de 
"parsing", durante el cual se compro- 
bara la sintaxis del los archivos esceni- 
cos y se construira a partir de ellos un 
modelo interno de la escena en un co- 
digo propio. El "parsing" concluira 
cuando este modelo interno -a partir 
del cual POV va a generar la escena- 
haya incluido a todos los elementos 
descritos en los archivos escenicos del 
proyecto. Este proceso es. pues, muy 
similar al que realiza cualquier compi- 
lador de un lenguaje de progratnacion 
cuando esta procesando los fuentes de 
un proyecto. Como en este caso, el par- 
ser de POV comenzara a leer desde el 
principio el fichero inicial dado como 
entrada y continuara procesandolo has- 
ta llegar al final. Si durante el "parsing" 
POV halla un error de sintaxis, el pro- 
ceso se detendra y se mostrara un men- 
saje indicando el tipo de error y el nii- 
mero de lfnea donde se halla este. 
Entonces. el usuario debera corregir el 
error del archivo escenico antes de vol- 
vera invocar a POV. 

Cuando el "parsing" concluye, POV 
comienza a generar la imagen pixel a 
pixel. Esto puede llevar horas e incluso 
dfas si la escena es muy compleja o uti- 
liza efectos costosos en tiempo de cai- 
culo, pero no os asusteis: como media, 
las escenas con los regimientos de or- 
cos del niimero 14 de Rendermanfa re- 
quirieron tan solo de 30 a 45 minutos 
en un Pentium 150 para una resolucion 



10 Rendermanfa 



de 800*600 pixels; logicamente las 
pruebas intermedias generadas a una 
resolution mucho menor requirieron 
bastante menos tiempo. 

Filosofias alternativas 
con POV 

Hay que dejar claro que POV admite 
varias posibles filosofias de uso. Por un 
lado es posible crear escenas comple- 
tas utilizando iinicamente POV. Para 
ello, utilizaremos su lenguaje escenico 
para crear los objetos y situarlos en el 
espacio y tambien 
para definir las lu- 
ces, situar la ca- 
mara, etc. Pero por 
otro lado es posible 
tambien importar 
modelos creados 
desde otros progra- 
mas como «3D 
Studio». «Imagi- 
ne», etc., y utilizar- 
los para crear nues- 
tras escenas. Esto 
es factible gracias 
a que el lenguaje 
escenico de POV 
dispone de senten- 
cias como triangle, 
smoothjxiangle y 
mesh, las cuales 

pueden ser empleadas por programas 
de conversion como 3ds2pov, 3dwin y 
otros. Estas herramientas procesaran el 
archivo que les suministremos como 
entrada -conteniendo un modelo crea- 
do por un programa como «3D Studio* 
o «Imagine»- y generaran uno o mas 
archivos .pov o .inc donde se guardara 
una "traduction" comprensible para 
POV. En estos archivos la malla poli- 
gonal con la description del modelo es- 



tara descrita con sentencias triangle y 
smooth_triangle. Estas sentencias se 
emplean para crear triangulos indican- 
do la colocacion de los vertices y no 
suelen ser usadas "a mano" por los 
pov-usuarios. (Los miembros del pov- 
team -los creadores de POV- las han 
disenado pensando iinicamente en los 
creadores de tools de conversion). 

Aparte de estas, existen otras formas 
de emplear a POV. Vamos a intentar re- 
sumir las mas frecuentes: 

1 ) El usuario emplea el lenguaje es- 




Una antigua obra del gran Mike Miller. 



cenico de POV para crear la escena 
completa incluyendo los objetos, fuen- 
tes de luz, camaras, etc. 

2) El usuario emplea un modelador 
creado expresamente para POV y otros 
programas similares (como Polyray) 
para construir la escena que final mente 
sera renderizada desde POV. Estos pro- 
gramas no suelen construir los objetos 
con poh'gonos sino con formas mate- 
maticas equivalentes a las primitivas 



basicas de POV, y su mayor problema 
es que no suelen representar adecuada- 
mente las operaciones csg (sobre las 
cuales se sustenta gran parte de la filo- 
sofi'a de construction de objetos de 
POV). Programas como Moray y Bree- 
ze caen en este apartado. 

3) El usuario usa un modelador poli- 
gonal comercial como «3D Studio» o 
«Imagine» para crear los objetos que 
van a componer la escena. Luego em- 
plea una herramienta de traduction pa- 
ra crear archivos que puedan ser proce- 
sados directamente 
por POV. Algunas 
herramientas como 
3ds2pov traducen 
no solo la malla 
geometrica de los 
objetos sino tam- 
bien la colocacion 
y color de las fuen- 
tes de luz, la pig- 
mentation de los 
objetos, la position 
y orientation de la 
camara, etc. De es- 
ta manera el usua- 
rio ni siquiera ten- 
dra que molestarse 
en trastear con los 
ficheros escenicos 
resultantes de la 
traduction, sino que se limitara a orde- 
nar directamente el render con POV. 

4) Aquf, como en el caso anterior, 
el usuario emplea un modelador co- 
mercial y una tool de traduction pero 
luego edita los ficheros traducidos pa- 
ra situar manualmente a los modelos 
en la escena y/o crear copias-mesh de 
estos (ver nurnero 14 de Renderma- 
ni'a). Tambien puede optarse por cam- 
biar manualmente a la camara o a las 



Rendermania 11 




fuentes o por realizar cualquier otro 
cambio "manual". 

5) Ultimamente estan apareciendo 
modeladores como «Rhinoceros» o 
«Spatch» con los que el usuario puede 
crear objetos empleando splines (lo 
cual es ideal para, entre otras cosas, 
crear formas organicas). Estos modela- 
dores pueden exportar los modelos di- 
rectamente al formato de POV (o sea 
que no se precisa herramienta de tra- 
duccion). En el caso de «Rhinoceros», 
este convierte las formas nurbs de los 
objetos a mallas geometricas antes de 
proceder con la exportacion mientras 
que «Spatch» puede exportar los obje- 
tos como patches bicubicos (POV dis- 
pone de una sentencia especffica para 
generar estas superficies matematicas). 

Personalmente he probado todas las 
posibilidades descritas aquf y he cons- 
tatado que todas tienen sus ventajas e 
inconvenientes. A menudo suele ser 
mas sencillo utilizar un modelador para 
crear un modelo complejo como un 
mech o un orco, pero el lenguaje esce- 
nico de POV todavfa me sigue pare- 
ciendo lo mejor para crear ciertos obje- 
tos -sobre todo castillos y edificios 
diversos-. Ultimamente suelo emplear 
el «Rhinoceros», que se ha convertido 
en mi modelador favorito, para cons- 
truir los modelos que posteriormente 
edito y altero con el lenguaje escenico 
de POV. 

Sin duda los lectores que ya trabajen 
con programas como «3D Studio». 
«Imagine» o «Caligary» se preguntaran 
por que habrfan de molestarse en tradu- 
cir sus modelos al formato de POV para 
renderizarlos desde este programa. Pues 
bien, aquf teneis varias razones: 

1 ) El motor de render de POV per- 
mite crear imagenes de una calidad 




sencillamente extraordinaria. Con 
tiempo y habilidad se pueden crear ver- 
daderas obras de arte. Ademas, la rela- 
tion calidad/tiempo del programa es 
tambien muy buena. 

2) Las sentencias llamadas "de pro- 
gramacion" del lenguaje escenico 
(#while, #if, rnd, etc) pueden procu- 
rarnos ventajas fantasticas, aunque 
probablemente solo podran ser apre- 
ciadas en su justo valor por quienes 
tengan buenas nociones de programa- 
cion. Pensadlo: con programas como 



«3D Studio», «Imagine» o «Rhino» 
podemos construir, por ejemplo, un 
modelo bastante realista de una hor- 
miga con relativa facilidad. Ahora 
bien, ^serfa igual de sencillo represen- 
tar un hormiguero? <,Cuanto tiempo 
tardarfais en situar cientos de hormi- 
gas para crear la escena teniendo en 
cuenta que deseamos que cada una sea 
levemente diferente a las dermis? <,Y 
si tambien queremos que cada una es- 
te colocada en una postura diferente? 
Escenas como esta son -como ya de- 



12 Rendermania 




mostramos en el numero 14 de Ren- 
dermanfa- perfectamente posibles con 
POV. Sin embargo este tipo de esce- 
nas, compuestas por cientos de mode- 
los, no son el unico ejemplo posible de 
la utilidad del lenguaje de POV. Es fa- 
cil ver que esta potencia en la manipu- 
lacion de objetos (ya sean creados des- 
de POV o importados) puede ser litil 
para muchos casos diferentes. Podn'a- 
mos, por ejemplo, crear un fichero .inc 
que generase arboles siguiendo un al- 
goritmo determinado para colocar a 



cientos de objetos simples. Esto ya lo 
hizo Sonya Roberts con fenomenales 
resultados. Podrfamos tambien generar 
un firmamento aleatorio con cientos de 
estrellas y nebulosas planetarias (Ren- 
dermanfa niimero 2) o podrfamos colo- 
car los cientos de columnas de un tem- 
plo usando un buble #while anidado o 
podrfamos... 

3) Podemos emplear los pov-ipas 
para mejorar nuestras escenas. El mejor 
ejemplo de Pov-ipas es el trees de Son- 
ya Roberts. (Este pov-ipas es un archi- 
vo .inc que puede ser referenciado des- 
de nuestros flcheros .inc. El Trees. inc 
de Sonya crea arboles usando las sen- 
tencias de programacion de POV). 
jPor otro lado -y a diferencia de lo que 
sucede con los ipas de «3D Studio»- 
cualquiera puede crear sus propios ipas 
para POV ! En POV todo esta abierto y 
accesible al usuario. Podemos incluso 
alterar los fuentes y crear nuestra pro- 
pia version de POV si nos viene en ga- 
na (aunque el hecho de que esto sea 
posible no significa que cualquiera 
pueda lograrlo). 

4) El lenguaje escenico de POV pue- 
de crear texturas procedurales de una 
gran calidad. 

5) Los "efectos atmosfericos" de 
POV son potentes y faciles de emplear. 

Seguidamente, vamos a explicar los 
rudimentos basicos de POV con el fin 
de que los usuarios de otros programas 
puedan generar sus escenas con el. 

Objetos en el POV-espacio 

POV puede representar dos tipos de 
objetos, los que pueden construirse uti- 
lizando las sentencias del lenguaje es- 
cenico y los importados. En este artf- 
culo vamos a ocuparnos unicamente de 
los objetos importados pero, para po- 



ner un ejemplo sencillo, veamos como 
crearfamos una esfera utilizando el len- 
guaje de POV: 

sphere (<0, 1,2>, 4 pigment (color Red) ) 
Con esta lfnea le diremos a POV que 
cree una esfera de color rojo cuyo cen- 
tre estara situado en las coordenadas 
<0,1,2> y que tendra cuatro unidades 
de radio. La expresion <0, 1 ,2> indica 
unas coordenadas dentro del universo 
virtual de POV y se refiere a los ejes X, 
Y y Z. El punto <0,0,0> es el centre del 
pov-espacio, el cual se extiende teori- 
camente hasta el infinite en todas di- 
recciones. Es en este punto donde se 
cruzan los tres ejes y normal mente el 
usuario suele disponer a los objetos de 
la escena cerca de el. Ahora bien, ^co- 
mo nos orientaremos dentro de este 
universo? Pues de la manera en que 
queramos ya que cualquier orientation 
es arbitraria. 

La mayorfa de los povmanfacos, sin 
embargo, utilizan el piano formado pol- 
ios ejes X y Z como suelo y lo sittian a 
la altura de Y=0. Asf, por ejemplo. los 
orcos del niimero 14 de Rendermanfa 
estan orientados perpendicularmente 
con respecto al piano de "suelo" X-Z y 
la planta de sus pies reposa a la altura 
de Y=0. Para visualizar esto imaginad 
que el centra de coordenadas esta si- 
tuado en el centre de la pantalla de 
nuestro ordenador. 

En este caso el eje X serfa una lfnea 
horizontal que cruzarfa el centre de 
nuestro monitor y el eje Y serfa una lf- 
nea vertical que dividirfa en dos mita- 
des a la pantalla. En cuanto al eje Z po- 
demos visualizarlo como una lfnea que 
se introduce perpendicularmente en el 
piano X-Y del monitor. Las coordena- 
das de estos ejes tomaran valores posi- 
tivos o negatives dependiendo del lado 



Rendermanfa 13 






< OHIO... 



del eje de coordenadas en que se ha- 
llen. El lado derecho del eje X es posi- 
tive) y el izquierdo negative El lado su- 
perior del eje Y es positivo y el inferior 
es negativo. Por ultimo, el lado del eje 
Z que se encuentra "dentro" del moni- 
tor es positivo y el opuesto negativo. A 
menudo en nuestras escenas la camara 
se situa en alglin punto de -Z mientras 
que los objetos se colocan en el lado 
positivo de Z. Pero, lo repetimos, esto 
no es mas que una convention. 

Dentro de este universo virtual los 
objetos pueden ser trasladados. rotados 
y escalados y estas ordenes funeionan 
igual para todo tipo de objetos. Asf, por 
ejemplo, la lfnea... 

sphere {<0, 1, 2>, 4 pigment (color 
Red} translate<4,0,10>) 

...significa que la esfera original- 
mente creada con su centro en <0. 1 , 
2>, sera representada en la position fi- 
nal <4,0,12> al renderizar la escena. 
Esto sucede asf porque la sentencia 
translate suma un desplazamiento rela- 
tivo al punto anterior donde estuviera 
el objeto. Para que esto funcione la 
sentencia debe quedar dentro de los pa- 
rentesis que engloban a la definition 
del objeto. Podemos utilizar todas las 
sentencias translate que deseemos para 
un mismo objeto y de hecho podemos 
emplear cualquier secuencia de trans- 
formaciones. Asf, por ejemplo. es va- 
lida la lfnea... 

sphere |<0. 1. 2>. 4 pigmentjcolor 
Red} translate<4,0, 10> rotate<45,0,0> 
scale<2,2,2>| 

...donde se realiza primero una tras- 
lacion. luego una rotacion de 45 grados 
en el eje X y, finalmente, una escala- 
tion del objeto por 2 en todos los ejes. 
(Las operaciones se realizan, claro esta, 
en el orden en que estan escritas). 




Una obra abstracts de Russel Garwood. 



La posicion espacial donde se reali- 
zan las operaciones de rotacion o esca- 
lado influye en los resultados finales. 
Veamos un par de ejemplos: 

1 ) Si un objeto esta situado en el 
pov-espacio de manera que su centro 
de gravedad se halle en <0,0.0>. enton- 
ces, al aplicarle la orden scale<2,2,2>. 
el objeto duplicara su tamano sin mo- 
verse del sitio. En cambio. si esta si- 
tuado en otra posicion antes de la es- 
calation, el resultado -aparte de la 
duplication de tamano- sera el de tras- 
ladarse de posicion. Para comprender 
esto tened en cuenta que la escalation 
es una multiplication de todos los pun- 
tos espaciales del objeto. Si el centro 
del objeto estaba en <0.0,0>, el objeto 
seguira estando en el mismo sitio des- 
pues de la multiplication pero si esta- 
ba. por ejemplo. en <2,3,8>, su nuevo 
centro pasara a ser <4,6,16> (despues 
del scale <2,2,2>). Naturalmente, las 
operaciones de escalation no tienen 
por que ser identicas en todos los ejes. 
Asf, por ejemplo, una orden como 
<2,1,.50> multiplica por dos la longi- 



tud del objeto a lo largo del eje X, deja 
igual su longitud en el eje Y y lo divide 
por dos en el eje Z. Veamos un ultimo 
ejemplo: si las plantas de los pies de un 
orco reposan en Y=0, ^que ocurrira si 
aplicamos la orden scale <1.10, 1.10, 
1.1 0>? Pues que la criaturilla aumen- 
tara su tamano en una decima parte, pe- 
ro seguira en el mismo sitio (o sea con 
los pies en el suelo). 

2) La orden rotate aplicada a un eje 
siempre produce una rotacion en torno 
al punto de dicho eje. Asf, si el centro 
del objeto esta situado en <0.0,0>, en- 
tonces cualquier orden de rotacion hara 
que el objeto gire sobre si mismo. Si en 
cambio el objeto esta situado en cual- 
quier otro punto, entonces girara como 
un satelite en torno al punto del eje 
de rotacion. En cuanto al sentido de las 
rotaciones, este dependera del signo 
aplicado a los grados de rotacion. Para 
saber siempre hacia donde rotara un 
objeto hay que aplicar la regla de la 
mano izquierda: haced el signo de ok 
con la mano izquierda y orientadla de 
modo que el pulgar apunte en la direc- 



14 Rendermania 



cion positiva del eje en el que quereis 
efectuar la rotation. Pues bien, los de- 
dos estaran curvados en la direction 
positiva del giro. Veamos un ejemplo: 
tenemos una esfera situada en la posi- 
tion <8.10,0> a la que aplicamos una 
rotation de +90 grados en el eje Y. 
^Cual sera la position final de la esfe- 
ra? Pues la <0,10,-8>. Para visualizar 
esto imaginad que cuando se rota en un 
eje, el objeto girara en el piano definido 
por los dos ejes restantes. 

Ahora pasemos al siguiente punto: 
como manejar objetos importados des- 
de POV. 

Objetos importados 

Como antes hemos dicho -y salvo en 
el caso de «Rhinoceros»- las mallas de 
triangulos de un objeto 
creado desde un modela- 
dor externo deberan ser 
procesadas con alguna 
utilidad para generar ar- 
chivos que puedan ser 
directamente lefdos por 
POV. Supongamos el ca- 
so de un archivo llamado 
vaca.3ds con el modelo 
de una vaca almacenado 
en el formato de «3D 
Studio». Los pasos para 
renderizar a esta vaca 
desde POV seran: 

1 ) Primero procesa- 
remos el 3ds para crear 
unos archivos directamente digeribles 
por POV. Para ello la mejor option si- 
gue siendo el 3ds2pov de Steve Anger 
(que podeis hallar en el CD-ROM), 
aunque tambien podeis emplear otras 
utilidades como el 3dwin. Con 3ds2pov 
(que es una utilidad para MS-DOS) la 
cosa sera tan sencilla como teclear 



"3dspov vaca.3ds vaca.pov". Esto 
creara dos archivos llamados va- 
ca.pov y vaca. inc. El primero 
guardara las sentencias que de- 
finen a la camara, las luces y 
las texturas e invocara al segun- 
do fichero donde se guarda la 
malla geometrica de la vaca. Co- 
mo 3ds2pov ha traducido tambien 
la camara y las luces que habi'a defi 
nidos en vaca.3ds, esto quiere decir que 
vaca.pov sera directamente ejecutable 
por POV, con lo cual podremos pasar 
al siguiente paso. 

2) Invocaremos a POV con la lfnea 
"povray +ivaca.pov +ovaca.tga -d +x +v 
+P +w640 +h480 +a +bl92". Esta orden 
ordenara a POV que genere el archivo 
vaca.tga con una resolution de 640*480. 





Otra magnifica escena de Gena Obukhov 



jY esto es todo! Sin embargo, si 
verdaderamente queremos sacar par- 
tido a POV, habremos de hacer mu- 
chas mas cosas. Podriamos anadir un 
suelo, crear copias del objeto, trastear 
con las luces, anadir un cielo, efectos 
de niebla. cambiar la textura de la va- 
ca, etc. Y para ello tendremos que se- 



El fichero 3ds exportado a POV. 

guir aprendiendo cosas sobre POV. Pa- 
ra ello lo mejor sera echar un vistazo a 
los archivos que hemos generado con 
3ds2pov. Si editais vaca.pov y echais 
una ojeada al final del fichero observa- 
reis la siguiente sentential 
#include "vaca.inc" 

La sentencia #include 
funciona exactamente igual 
que la directiva del mismo 
nombre del lenguaje C. 
Esto es, la sentencia indi- 
ca a POV que debe leer y 
procesar el fichero inclui- 
do entre comillas. Como 
este archivo contiene la 
malla con la vaca, el resul- 
tado sera que POV repre- 
sentara a la vaca en la po- 
sition espacial en que fue 
defmida (no hay translates 
en el archivo .inc). 
La sentencia #include tiene una gran 
importancia ya que POV volvera a leer 
y a procesar el archivo "incluido" cada 
vez que encuentre una orden #include 
durante el proceso de parsing. Para 
comprender lo que esto significa hay 
que tener en cuenta la existencia de 
otras caracterfsticas importantes de 



Rendermama 15 






C oiiio... 




Una obra de Ian Mackay. 

POV como la existencia de la sen- 
tencia #declare y la posibilidad de 
usar variables. Examinad las dos 11- 
neas siguientes: 

#declare posX=10 

#declare posX=PosX+10 

#declare gY=.20 

sphere (<posX*2, 0, 0>, 4 pig- 
ment {color Red} scale<l,gY,l>} 

Despues de esto POV creara una es- 
fera roja en las coordenadas <40,0,0>. 
Asi, como podeis ver, #declare puede 
ser utilizada para crear variables que 
pueden ser empleadas en sentencias 
posteriores de creacion y modificacion 
de objetos. Logicamente estas variables 
seguiran existiendo y conservando su 
valor aunque se cargue y procese un 
nuevo fichero usando #include. Como 
el fichero "incluido" puede hacer refe- 
renda a variables defmidas en el archivo 
de llamada, esto, en la practica, significa 
que podemos usar las sentencias #inclu- 
de y #declare para crear archivos que 
funcionaran como si fuesen funciones 
de C (aunque POV realmente no dispo- 
ne de sentencias para crear funciones). 



Esto implica que un mismo fichero po- 
dra generar objetos diferentes en funcion 
de los valores que lleguen a sus varia- 
bles. Este es el fundamento basico en 
que se apoyan todos los Pov-ipas (como 
el trees. inc de Sonya Roberts). Final- 
mente hay que decir que POV permite 
que los ficheros "incluidos" tengan a su 
vez sus propias sentencias #include. con 
lo cual podemos encontrarnos con un 
caso como el siguiente: POV esta traba- 
jando sobre el archivo principal (o sea 
el .pov inicial) y encuentra un #include 
al fichero vaca.inc. Entonces carga este 
fichero y empieza a procesarlo hasta que 
halla dentro del mismo otra orden in- 
clude que referenda al fichero pasto.inc 
(el cual crea por ejemplo un cuadrado 
de hierba a los pies de la vaca). Lo que 
sucedera entonces sera que POV termi- 
nara de procesar al archivo invocado y al 
concluir regresara al fichero que ha 11a- 
mado a pasto.inc. Entonces se continua- 
ra procesando a vaca.inc y, al acabar con 
la ultima linea de este archivo, se regre- 
sara al fichero que invoco a este aquel 
(o sea a vaca. pov) y se seguira traba- 



jando con el hasta llegar a su ultima li- 
nea, en cuyo momenta el parsing habra 
concluido y comenzara la generadon 
de la imagen. 

Pero, siguiendo con nuestro ejem- 
plo, podemos crear mas vacas con sen- 
tencias como... 

object j#include "vaca.inc" transla- 
te<344,0,400>) 

object {#include "vaca.inc" transla- 
te<548,0,600>}. 

La sentencia object se emplea para 
poder englobar a objetos o a grupos de 
estos a tin de poder aplicarles transfor- 
maciones espaciales o asignarles una 




Las vasijas de Ian Mackay. 

textura. Existen muchas maneras de 
combinar el uso de object con union. 
#declare y mesh. Pero por hoy se nos 
acaba el espacio. El proximo mes ter- 
minaremos de repasar los aspectos mas 
basicos de POV (camaras, luces, etc.) 
para beneficio de los aspirantes a pov- 
manfacos. Despues de esto abordare- 
mos otros temas como la creacion de 
texturas procedurales y la animation, 
los cuales han sido muy poco tratados 
en Rendermanfa. 

Nota sobre las imageries 

Casi todas las imagenes utilizadas pa- 
ra ilustrar el presente articulo han sido 
creadas por conocidos artistas que em- 
plean POV para renderizar sus escenas. 



16 Rendermanfa 






El Foro del Lector 



/Vi Ha iin/H nil ii iii\ Podeis remitirnos vuestms trabajos o consultas, bien por carta a la direction que 
figura en el sumario de Panama, o via e-mail a renclermania.pcmania@habbypress.es 



Arte Virtual 



La lista de temas que hoy ofrece nuestro foro virtual es tan extensa 
como siempre.Dragones, chicas sinteticas, reconstrucciones virtuales 
de edificios de la antigua Roma,copias infograficas de cuadros 
del renacimiento, ejercitos-mesh, habitaciones, iglesias, invasiones 
extraterrestres, maquinas de guerra para la contienda orco-humana 
e incluso un magnifico orco cuya apariencia es tan simpatica como brutal. 



Koda es, aparte de un 
amante de la informatica y la infografia, un 
gran aficionado a la historia de la antigua Ro- 
ma y en particular a los edificios y monumen- 
tos de aquella epoca. Por esta razon Juan se 
ha embarcado en un fantastico proyecto: la re- 
creacion virtual de los edificios del Foro Ro- 
mano con «Caligary TrueSpace». En su carta 
Juan nos narra como intenta reproducer la es- 
cala y los detalles de estos edificios lo mas 
fielmente posible. Los detalles son muy inte- 
resantes, leed la carta. 

Aunque Juan solicita una cn'tica no me sien- 
to capacitado para hacerla. Tus edificios vir- 
tuales me nan parecido magnfficos (sobre todo 

el coliseo) pero tendrfa que compararlos con los reales, de los cuales no 
tengo un conocimiento demasiado exacto (aunque tambien me gusta 
mucho la historia, sobre todo la del Imperio Romano Oriental y la de 
todo el periodo medieval y del Renacimiento). Por ello me limitare a 
hacer la valoracion que has pedido. Tu proyecto es muy ambicioso pe- 
ro tus imagenes demuestran que estas plenamente capacitado para lle- 
varlo a cabo. La idea me parece muy buena y creo que todos esperaran 
con tanta ansia como yo el momento en que puedas enviar escenas con 
el panorama del Foro completo. jSuerte y paciencia! 




Rendermania 17 



¥ >L El For© del Lector 




El orco enviado por Jose Luis Koblcdo Pescador es sencillamente magnffico 
y su aspecto refleja a las mil maravillas la tfpica apariencia orcoide. Un estu- 
pendo ejemplar de orco que Jose Luis modelo con «Imagine 4.0» basandose en 
una miniatura Citadel. Para ello, Jose Luis empleo el Editor de Formas crean- 
do asi objetos que posteriormente fueron retocados desde el Editor de Detalles. 
Sin embargo quiza lo mas destacable sea que la cabeza fue creada partiendo de 
primitivas simples como esferas, conos y cilindros (; !). Unos objetos sobre los 
que Jose Luis trabajo empleando operaciones Csg y edicion de vertices. 

Jose Luis me pide una crftica pero en lugar de ello le dare un pequefio conse- 
jo: has sacado un gran partido de tecnicas que realmente no son muy adecuadas 
para crear formas antropomorficas. Creo que para este tipo de modelos es mas 

facil emplear un modelador basa- 
do en splines como «Rhino» o 
«Spatch»; conseguirfas formas de 
apariencia mas suave y con me- 
nos problemas en los puntos de 
union de las articulaciones. Lue- 
go podrfas exportar los objetos del 
modelo a «Imagine» para, desde 
alii, darles el acabado necesario 
asf como preparer la posture del 
orco y generar el render. En cuan- 
to a tus preguntas. es posible que dentro de poco volvamos a tratar algunos as- 
pectos interesantes de «Imagine», como los bones y la animacion. No hay, que 
yo sepa, ningun libro sobre «Imagine 4.0» a este lado del charco. Tan solo tene- 
mos el de Philip Shaddock dedicado a la version 2.0 editado por Anaya. Por otro 
lado «lmagine» no tiene ninguna herramienta para reducir poh'gonos. Para ello 
tendn'as que acudir a alguna utilidad externa; intentare hallar alguna. 




Guillermo Bartle Agustin nos 

envi'a escenas de batallas entre 
cazas espaciales usando como 
fondo el tema de la invasiones 
extrateirestres y pide una crftica 
constructiva. Pues bien, tus esce- 
nas, preparadas y renderizadas 
con POV, son resultonas pero 
creo que habrfas podido mejorar 
mucho el fondo estelar. ; Viste el 
numero 3 de Rendermani'a? Los 
fondos que allf aparecfan teni'an 
defectos pero mostraban mas co- 
lor y las estrellas teni'an diferen- 
tes tamanos. Tambien podrfas 
haber alargado los halos que re- 
presentan el fuego de los cohetes 
e incluso haberles dado varias ca- 
pas de color (de rojo a amarillo). 
Por ultimo, quiza habria sido me- 




jor poner un buen bitmap para la 
textura de las naves (el tfpico bit- 
map con cuadros grises desigua- 
les suele dar buenos resultados), 
Gracias por tu estupenda catapul- 
ts para mis lanceros aunque. co- 
mo ya habras visto. ahora tengo 
un pie puesto en ambos bandos... 
No he podido comprobar el 
fallo que mencionas del ataque 
planetario I porque no has in- 
cluido el archivo texturas.inc. 
Lo sustituf por textures.inc. pero 
entonces aparecfan mas errores 
en el parsing. 



18 Rendermani'a 




Nadie nos habia enviado nunca antes una escena intentando reproducir un cua- 
dro clasico y por ello Armando Gutierrez Pernia merece nuestra mas since- 
ra felicitation. La escena, creada con «3D Studio 3.0» y «Caligary TrueSpace 
2.0» tiene un gran parecido con el cuadro original (del que este autor nos envi'a 
una t'oto); las proporciones de los modelos, las posturas, incluso el r'ondo, todo 
es perfecto. Practicamente lo linico que ha faltado ha sido "envejecer" la ima- 
gen para hacerla aim mas identica al cuadro original. Enhorabuena. 



Jose Francisco Calvo Mo- 
reno nos envi'a una catapul- 
ta para apoyar a los orcos. 
jGracias! Pero (,por que no 
le has puesto ruedas? <,C6- 
mo demonios van a arras- 
trarla los orcos al campo de 
batalla? 

En cuanto a tus preguntas e 
ideas... 

1 ) Tus problemas con 
«Imagine» pueden deberse 
a tu configuration de me- 
moria. Tu version de «lma- 
gine» no funcionara desde 
una caja de Windows. 

2) El tenia de los VRML es 
muy interesante pero no se 

si realmente encajan'a aquf. Llevo ya algun tiempo pensandolo. 

3) Lo del museo virtual con todos los modelos de los lectores me pa- 

rece sencillamente impracticable. ;,Te das cuenta del trabajo que repre- 

sentaria? ^De 
la cantidad de 
memoria y 
tiempo de cal- 
culo que se 
precisarfan? 
No me gusta 
decir "no" pe- 
ro esta vez lo 
hare: no, no, 
no y no. 






Dos nuevos autores que solo se identifican co- 
mo F v T nos han enviado unas impactantes 
escenas con personajes creados con una ver- 
sion recortada de «3D Studio 3.0». Los tres 
son muy realistas y suponen un ejemplo per- 
fecto de lo que puede conseguirse con la edi- 
tion de vertices y... la paciencia. No veo nada 
que criticar en ellos como no sea su falta de 
expresividad. Tan solo puedo aconsejaros que 
intenteis hacer lo mismo con un buen modela- 
dor de splines. A peticion vuestra evitaremos 
la publicacion de las mallas de los personajes. 







Rendermam'a 



"&wfr 

1 ■ 




mk 



El For© del Lector 




es otro povmanfaco que ya ha pasado ante- 
riormente por estas paginas. Hoy Roberto nos envi'a diversas escenas entre 
las que destaca la habitacion (por sus estupendas texturas) y la iglesia (aun- 
que el tamano del arbol que has puesto queda desproporcionado con res- 
pecto a aquella). En cuanto a tus problemas con #while, ;,has probado a em- 
plear bucles anidados o a meter varias ventanas dentro de los bucles? En 
cuanto a tus preguntas y peticiones... 

I ) POV 3.0 no puede reproducir exactamente los mismo efectos que tiene el 
POVAFX. Habra que esperar a que nuestro amigo Marcos tenga tiempo de 
implements sus efectos en la actual version de POV, pero eso, dado que ac- 
lualmente esta mas liado que la pata de un romano, no parece muy probable por ahora. 

2) lncluiremos nuevas bitmaps de tanto en tanto, cuando el tenia tratado asi lo exija. 

3) ;,Nuevos ficheros Dem? Bueno. quiza, no se... 



Oriol Hasan ( arrasco nos envi'a varios 
proyectos creados con «Imagine 4.0» de 
los que pide cn'tica. A este respecto creo 
que como primer paso deberiis practicar 
mucho con el modelador para que tus es- 
cenas ganen en complejidad y realismo. 
En cuanto a tus dudas te dire que... 

1 ) Esta pendiente un especial sobre al- 
gunos apartados de «Imagine». 

2) El diseno de las nubes dependent del 
programa utilizado (otra cuestion a la que 
dedicar un artfculo). Muchos autores sue- 
len superponer objetos a los que se da un 
valor de transparencia y un color adecua- 
do. Tambien pueden emplearse bitmaps 
de fondo o utilizar algiin efecto especial 
del motor si el programa dispone de el. 

3) iPOV no es diffcil! 




lio Anton, un profe- 
sor de matematicas atacado 
tambien por el virus info- 
grafico decidio comprobar 
por si mismo la potencia de 
la sentencia mesh comenta- 
da en el numero 14 de Ren- 
dermam'a y para ello prepaid 
su propio ejercito de orcos. 
jBien hecho. pero no te pa- 
res aqui! ( ',Que te parecen las posibilida- 
des del lenguaje escenico de POV para 
crear variaciones en cada personaje del 
ejercito? Espero verte de nuevo por aqui. 




Bartolome Colom Bauzanos envi'a una preciosa escena en la que un Dragon y una 
chica creados con «3D Studio» se recortan sobre un cielo verde. Bartolome dice es- 

tar interesado en utilidades reductoras 
de poh'gonos dy quien no?). (Conoces 
el optimize. pxp de Yost Group? Este 
Ipas es la unica option que conozco pa- 
ra «3D Studio», aunque no me convence 
demasiado su algoritmo de t'unciona- 
miento. Gracias por tus mallas. 




20 Rendermam'a